/**
 * !第 1 种方式：分别指定（分别指定函数参数和返回值的类型）
 */
// 函数声明
/* function sum(a: number, b: number): number {
  return a + b
} */
// 函数表达式
/* const sum = function(a: number, b: number): number {
  return a + b
} */

// !第 2 种指定函数类型的写法：整体指定（只适用于函数表达式的写法）
/* const sum: (a: number, b: number) => number = (a, b) => {
  return a + b
} */

// 不建议用上面两种同时给函数指定类型
/* const sum: (a: number, b: number) => number = (a: number, b: number): number => {
  return a + b
} */

// 可以配合类型别名去使用
type TFn = (a: number, b: number) => number

const sum1: TFn = (a, b) => {
  return a + b
}
const sum2: TFn = (a, b) => {
  return a + b
}

export { }